МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
/
Лабораторна робота №2
з дисципліни " Цифрова обробка сигналів "
Львів – 2014 р.
Тема: ДИСКРЕТИЗАЦІЯ І КВАНТУВАННЯ СИГНАЛІВ.
Мета роботи: Дослідити процес дискретизації і квантування сигналів, оцінити похибку оцифровування.
ЗАВДАННЯ
при чому, згідно варіанту:
№
А1
А2
А3
А4
2
25
18
0,73
-7
4
12
2
1/3
0
Тобто, аналітичний запис сигналу такий:
.
Аналітичний розрахунок кроку дискретизації та періоду сигналу
Згідно теореми Котельникова: , де : - гранична частота. Оскільки, заданий сигнал містить різні частоти, то граничною буде найбільша з них: . Отже: .
Підставивши отримане значення у теорему Котельникова, маємо крок дискретизації:
Для знаходження періоду заданого сигналу слід знайти найменше спільне кратне між періодами всіх окремих складових сигналу. Таких частин є чотири (чотири доданки присутні в аналітичному представленні сигналу):
; ;
;
Як відомо, амплітуда та фаза не впливають на період сигналу, тому до уваги слід брати лише частоту.
Отже, складові заданого сигналу мають такі періоди:
; ; ; .
Очевидно, що найменше спільне кратне становить (воно ділиться без остачі на решту періодів). Таким чином період заданого складеного сигналу становить:
Текст програми
clear all
//очистка пам’яті
clc
//закриття всіх графічних вікон
close()
//очистка екрану
A1=25; A2=18; A3=0.73; A4=-7;
//амплітуда
w1=4; w2=12; w3=2; w4=1/3;
//частота
phi1=%pi/5; phi2=%pi/2; phi3=0; phi4=%pi/4;
//фаза
M=2^5;
//кількість рівнів квантування
koef=2^0;
//коефіцієнт кількості відліків
w_gr=max([w1,w2,w4,w3]);
//гранична кругова частота
f_gr=w_gr/(2*%pi);
//гранична лінійна частота
dt=1/(2*f_gr*koef);
//дискрет часу за теоремою //Котельникова
T=6*%pi;
//період з аналітичних розрахунків
t=0:dt:T-dt;
//вектор часу для одного періоду
x=A1*cos(w1*t+phi1)-A2*sin(w2*t+phi2)+A3*sin(w3*t+phi3)-A4*cos(w4*t+phi4);
//вектор дискретного сигналу
maxA=max(abs(x))
//максимальне значення амплітуди
minA=-maxA
//мінімальне значення амплітуди
N=length(x);
//довжина вектору сигналу
k=(maxA-minA)/(M-1);
//квант амплітуди
K=minA:k:maxA;
//вектор рівнів квантування
y=floor(x/k)*k;
if modulo(M,2)==0
y=y+k/2;
end;
//округлення дискретного значення //сигналу до найближчого рівня //квантування, а отже, отримання //квантованого, тобто цифрового //сигналу
KK=ones(N,1)*K; plot(t,KK,'k--')
ff=gca()
ff.auto_ticks=["on","on","on"]
xlabel('Час,с'); ylabel('Рівні квантування')
//відображення рівнів квантування
plot2d(t,x,3)
//графік дискретного сигналу
plot2d2(t,y,5)
//графік квантованого сигналу
a=max(abs(y-x))
disp(a,"a=")
//абсолютна похибка
b=(1/N)*(sum(y)-sum(x))
disp(b,"b=")
//середня похибка
d=(1/N)*sum((y-x).^2)
disp(d,"d=")
//дисперсія
4. Оцінка похибки оцифровування
Koef
M
A
B
D
1
8
6.8068734
0.1908623
11.275014
32
1.5478236
0.0430979
0.8663435
256
0.1808839
0.0104787
0.0130490
2
8
6.8068734
0.0954311
12.219797
32
1.5478236
3.917D-15
0.7915504
256
0.1858362
- 0.0026197
0.0127830
4
8
6.825131
0.2862934
13.599957
32
1.5478236
- 0.0430979
0.7661018
256
0.1858362
0.0026197
0.0120126
8
8
6.8557119
0.0954311
14.562559
32
1.5478236
5.557D-15
0.7872766
256
0.1886025
0.0019648
0.0119084
5. Графіки дискретного та квантованого сигналу для таких параметрів :
М=32; koef=4
/
6. Висновки
В даній лабораторній роботі проведено оцифровування сигналу, заданого аналітичним виразом : .
Для цього визначено крок дискретизації та період досліджуваного сигналу. Вони становлять, відповідно : ;
Здійснено оцінку точності оцифровування за критеріями абсолютної, середньої похибки та дисперсії, в залежності від частоти дискретизації та кількості рівнів квантування. З отриманих результатів видно, що перши...